package com.unju.ventanas.perfil;

import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.border.BevelBorder;

import com.unju.hibernate.entidades.Perfil;
import com.unju.hibernate.patronDAO.imp.PerfilDAOImp;
import com.unju.utils.AllShowMessage;
import com.unju.utils.ConstantesGlobales;
import com.unju.ventanas.principal.JFrmPrincipal;

import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;

import javax.swing.SwingConstants;
import javax.swing.ImageIcon;

public class JPLineaPermiso extends JPanel {

	
	private static final long serialVersionUID = 1L;
	private JLabel lblCodigo;
	private JLabel lblNombrePermiso;
	private JLabel lblDescripcion;
	private JButton btnVer;	
	private JButton btnEditar;
	private JButton btnEliminar;
	Perfil perfil;
	
	JDialogEditarPermiso pEditarPermiso;
	JDialogDetallePermiso pDetallePermiso;
	
	public JPLineaPermiso(Perfil p,String codSeg) {		
		setLayout(null);
		setBorder(new BevelBorder(BevelBorder.RAISED, null, null, null, null));
		setBounds(10, 193, 970, 31);
		perfil=p;
		
		lblCodigo = new JLabel(String.valueOf(p.getIdPerfil()));
		lblCodigo.setHorizontalAlignment(SwingConstants.CENTER);
		lblCodigo.setBounds(10, 7, 100, 14);
		add(lblCodigo);
		
		lblNombrePermiso = new JLabel(p.getNombre());
		lblNombrePermiso.setBounds(150, 7, 200, 14);
		add(lblNombrePermiso);
		
		lblDescripcion = new JLabel(p.getDescripcion());
		lblDescripcion.setBounds(410, 7, 400, 14);
		add(lblDescripcion);
		
		btnVer = new JButton();
		btnVer.setIcon(new ImageIcon(JPLineaPermiso.class.getResource(ConstantesGlobales.VER_DATOS)));
		btnVer.setBounds(820, 3, 30, 25);
		btnVer.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				pDetallePermiso=new JDialogDetallePermiso(JFrmPrincipal.getInstance(),perfil);								
			}
		});		
		add(btnVer);
		
		btnEditar = new JButton();
		btnEditar.setIcon(new ImageIcon(JPLineaPermiso.class.getResource(ConstantesGlobales.EDITAR_DATOS)));
		btnEditar.setBounds(860, 3, 30, 25);
		btnEditar.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				pEditarPermiso=new JDialogEditarPermiso(JFrmPrincipal.getInstance(),perfil);				
			}
		});
		add(btnEditar);
		
		btnEliminar = new JButton();		
		btnEliminar.setIcon(new ImageIcon(JPLineaPermiso.class.getResource(ConstantesGlobales.BORRAR_DATOS)));
		btnEliminar.setBounds(900, 3, 30, 25);
		btnEliminar.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				int resp = JOptionPane.showConfirmDialog(JFrmPrincipal.getInstance(), ConstantesGlobales.MENSAJE_ELIMINAR_PREGUNTA, ConstantesGlobales.ADVERTENCIA_ATENCION, JOptionPane.YES_NO_OPTION);
				if(resp==0){
					eliminarPermiso();
				}
			}
		});
		add(btnEliminar);
		
		if(codSeg.substring(2, 3).equals("1"))
			btnEditar.setVisible(true);
		else
			btnEditar.setVisible(false);
		
		if(codSeg.substring(3, 4).equals("1"))
			btnEliminar.setVisible(true);
		else
			btnEliminar.setVisible(false);
		
		if(codSeg.substring(4, 5).equals("1"))
			btnVer.setVisible(true);
		else
			btnVer.setVisible(false);
			
	}
	private void eliminarPermiso(){		
		try {
			new PerfilDAOImp().delete(perfil);
			AllShowMessage.showMessage(ConstantesGlobales.MENSAJE_ELIMINAR_CORRECTO);
		} catch (Exception e) {
			e.printStackTrace();
			AllShowMessage.showErrorMessage(ConstantesGlobales.MENSAJE_ELIMINAR_ERROR+e);			
		}
	}
}
